Decouverte – Niveau 1 - Python

TP1

Pour commencer votre programme python devra contenir les lignes de code ci-dessous et le logiciel V-REP devra être lancé.

  • Dans V-REP (en haut à gauche) utilise les deux icones flèche pour déplacer la vue et regarder poppy sous tous les angles.
  • Dans notebook, utilise le raccourci 'Ctrl+Enter' pour éxécuter les commandes.

In [ ]:
import time
from poppy.creatures import PoppyTorso
poppy = PoppyTorso(simulator='vrep')

Créer un mouvement :

Pour créer un mouvement, tu dois modifier la position des moteurs.

Essaies la commande :


In [ ]:
poppy.head_z.goal_position = 90

Que se passe-t-il ? (entoures les bonnes réponses)

La tête de poppy s'oriente vers : Le haut / Le bas / La gauche / La droite ?

Elle effectue : Une translation / Une rotation ?

Sur quel axe : X / Y / Z ?

Application : effectuer le mouvement inverse (revenir en position initiale).


In [ ]:
# essaie ton code ici

Résumer : Pour effectuer un mouvement vous devez connaître, le nom du moteur, l'axe sur lequel il se déplace et la valeur de l'angle. La fonction « poppy.nom_du_moteur.goal_position = » réalise le mouvement.

Aide:utilise l'image pour trouver les bons moteurs.


In [ ]:
# essaies ton code ici

Trouver la position d'un moteur :

Essaies la commande :


In [ ]:
poppy.head_z
Des informations sur le moteur head_z s'affichent ; Comment les exploiter ?

Essaies la commande :


In [ ]:
poppy.head_z.present_position
Il n'y a plus qu'une seule information disponible : une valeur numérique en degrés ; Comment les exploiter ?

Stocker de l'information :

Pour mémoriser de l'information, il faut la stocker quelque part... où ? (entoures les bonnes réponses)

Dans une variable / Dans une liste / Dans un dictionnaire ?

Essaies les commandes :


In [ ]:
a=poppy.head_z.present_position
print( a )

Manipuler de l'information :

Essaies les commandes :


In [ ]:
a=poppy.head_z.name
print(a)
Ici la commande retourne « une chaîne de caractère » stocker dans la variable a.

Essaies les commandes :


In [ ]:
a=poppy.head_z
print(a)
Ici la commande retourne « un objet » (un moteur) stocker dans la variable a.

Essaies les commandes :


In [ ]:
tete = poppy.head_z
pos = tete.present_position
print(tete,pos)

tete.goal_position = -90
time.sleep(1)
print(pos)

pos = tete.present_position
time.sleep(1)
print(pos)

Que se passe-t-il ? (entoures les bonnes réponses)

La variable 'pos' stock la valeur de la position : du moteur head_z / du moteur tete ?

la variable ''pos est modifiée : Quand la position du moteur change / Quand une commande l'a modifie ?

Es-tu prêt pour la suite ?

et Poppy?

Crées ton propre code pour faire dire oui (de la tête) à Poppy.


In [ ]:
# essaies ton code ici

Tu as raté? c'est pas grâve, recommmence, essaies ces lignes pour redémarrer :


In [ ]:
messager.reset_simulation()

Encore buger ? essaies celles-ci :


In [ ]:
import pypot
poppy.stop_simulation()
pypot.vrep.close_all_connections()

from poppy.creatures import PoppyTorso
poppy=PoppyTorso(simulator='vrep')

Tu as fini? coupes la simulation ici:


In [ ]:
import pypot
poppy.stop_simulation()
pypot.vrep.close_all_connections()